package com.bzy.blp.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class TPileCriteria {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TPileCriteria() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andPieNumberIsNull() {
            addCriterion("pie_number is null");
            return (Criteria) this;
        }

        public Criteria andPieNumberIsNotNull() {
            addCriterion("pie_number is not null");
            return (Criteria) this;
        }

        public Criteria andPieNumberEqualTo(String value) {
            addCriterion("pie_number =", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberNotEqualTo(String value) {
            addCriterion("pie_number <>", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberGreaterThan(String value) {
            addCriterion("pie_number >", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberGreaterThanOrEqualTo(String value) {
            addCriterion("pie_number >=", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberLessThan(String value) {
            addCriterion("pie_number <", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberLessThanOrEqualTo(String value) {
            addCriterion("pie_number <=", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberLike(String value) {
            addCriterion("pie_number like", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberNotLike(String value) {
            addCriterion("pie_number not like", value, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberIn(List<String> values) {
            addCriterion("pie_number in", values, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberNotIn(List<String> values) {
            addCriterion("pie_number not in", values, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberBetween(String value1, String value2) {
            addCriterion("pie_number between", value1, value2, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPieNumberNotBetween(String value1, String value2) {
            addCriterion("pie_number not between", value1, value2, "pieNumber");
            return (Criteria) this;
        }

        public Criteria andPileDiameterIsNull() {
            addCriterion("pile_diameter is null");
            return (Criteria) this;
        }

        public Criteria andPileDiameterIsNotNull() {
            addCriterion("pile_diameter is not null");
            return (Criteria) this;
        }

        public Criteria andPileDiameterEqualTo(String value) {
            addCriterion("pile_diameter =", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterNotEqualTo(String value) {
            addCriterion("pile_diameter <>", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterGreaterThan(String value) {
            addCriterion("pile_diameter >", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterGreaterThanOrEqualTo(String value) {
            addCriterion("pile_diameter >=", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterLessThan(String value) {
            addCriterion("pile_diameter <", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterLessThanOrEqualTo(String value) {
            addCriterion("pile_diameter <=", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterLike(String value) {
            addCriterion("pile_diameter like", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterNotLike(String value) {
            addCriterion("pile_diameter not like", value, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterIn(List<String> values) {
            addCriterion("pile_diameter in", values, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterNotIn(List<String> values) {
            addCriterion("pile_diameter not in", values, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterBetween(String value1, String value2) {
            addCriterion("pile_diameter between", value1, value2, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andPileDiameterNotBetween(String value1, String value2) {
            addCriterion("pile_diameter not between", value1, value2, "pileDiameter");
            return (Criteria) this;
        }

        public Criteria andStrengthIsNull() {
            addCriterion("strength is null");
            return (Criteria) this;
        }

        public Criteria andStrengthIsNotNull() {
            addCriterion("strength is not null");
            return (Criteria) this;
        }

        public Criteria andStrengthEqualTo(String value) {
            addCriterion("strength =", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthNotEqualTo(String value) {
            addCriterion("strength <>", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthGreaterThan(String value) {
            addCriterion("strength >", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthGreaterThanOrEqualTo(String value) {
            addCriterion("strength >=", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthLessThan(String value) {
            addCriterion("strength <", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthLessThanOrEqualTo(String value) {
            addCriterion("strength <=", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthLike(String value) {
            addCriterion("strength like", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthNotLike(String value) {
            addCriterion("strength not like", value, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthIn(List<String> values) {
            addCriterion("strength in", values, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthNotIn(List<String> values) {
            addCriterion("strength not in", values, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthBetween(String value1, String value2) {
            addCriterion("strength between", value1, value2, "strength");
            return (Criteria) this;
        }

        public Criteria andStrengthNotBetween(String value1, String value2) {
            addCriterion("strength not between", value1, value2, "strength");
            return (Criteria) this;
        }

        public Criteria andDetermineIsNull() {
            addCriterion("determine is null");
            return (Criteria) this;
        }

        public Criteria andDetermineIsNotNull() {
            addCriterion("determine is not null");
            return (Criteria) this;
        }

        public Criteria andDetermineEqualTo(String value) {
            addCriterion("determine =", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineNotEqualTo(String value) {
            addCriterion("determine <>", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineGreaterThan(String value) {
            addCriterion("determine >", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineGreaterThanOrEqualTo(String value) {
            addCriterion("determine >=", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineLessThan(String value) {
            addCriterion("determine <", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineLessThanOrEqualTo(String value) {
            addCriterion("determine <=", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineLike(String value) {
            addCriterion("determine like", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineNotLike(String value) {
            addCriterion("determine not like", value, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineIn(List<String> values) {
            addCriterion("determine in", values, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineNotIn(List<String> values) {
            addCriterion("determine not in", values, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineBetween(String value1, String value2) {
            addCriterion("determine between", value1, value2, "determine");
            return (Criteria) this;
        }

        public Criteria andDetermineNotBetween(String value1, String value2) {
            addCriterion("determine not between", value1, value2, "determine");
            return (Criteria) this;
        }

        public Criteria andDesignGradeIsNull() {
            addCriterion("design_grade is null");
            return (Criteria) this;
        }

        public Criteria andDesignGradeIsNotNull() {
            addCriterion("design_grade is not null");
            return (Criteria) this;
        }

        public Criteria andDesignGradeEqualTo(String value) {
            addCriterion("design_grade =", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeNotEqualTo(String value) {
            addCriterion("design_grade <>", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeGreaterThan(String value) {
            addCriterion("design_grade >", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeGreaterThanOrEqualTo(String value) {
            addCriterion("design_grade >=", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeLessThan(String value) {
            addCriterion("design_grade <", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeLessThanOrEqualTo(String value) {
            addCriterion("design_grade <=", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeLike(String value) {
            addCriterion("design_grade like", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeNotLike(String value) {
            addCriterion("design_grade not like", value, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeIn(List<String> values) {
            addCriterion("design_grade in", values, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeNotIn(List<String> values) {
            addCriterion("design_grade not in", values, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeBetween(String value1, String value2) {
            addCriterion("design_grade between", value1, value2, "designGrade");
            return (Criteria) this;
        }

        public Criteria andDesignGradeNotBetween(String value1, String value2) {
            addCriterion("design_grade not between", value1, value2, "designGrade");
            return (Criteria) this;
        }

        public Criteria andPileLengthIsNull() {
            addCriterion("pile_length is null");
            return (Criteria) this;
        }

        public Criteria andPileLengthIsNotNull() {
            addCriterion("pile_length is not null");
            return (Criteria) this;
        }

        public Criteria andPileLengthEqualTo(String value) {
            addCriterion("pile_length =", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthNotEqualTo(String value) {
            addCriterion("pile_length <>", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthGreaterThan(String value) {
            addCriterion("pile_length >", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthGreaterThanOrEqualTo(String value) {
            addCriterion("pile_length >=", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthLessThan(String value) {
            addCriterion("pile_length <", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthLessThanOrEqualTo(String value) {
            addCriterion("pile_length <=", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthLike(String value) {
            addCriterion("pile_length like", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthNotLike(String value) {
            addCriterion("pile_length not like", value, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthIn(List<String> values) {
            addCriterion("pile_length in", values, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthNotIn(List<String> values) {
            addCriterion("pile_length not in", values, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthBetween(String value1, String value2) {
            addCriterion("pile_length between", value1, value2, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileLengthNotBetween(String value1, String value2) {
            addCriterion("pile_length not between", value1, value2, "pileLength");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityIsNull() {
            addCriterion("pile_integrity is null");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityIsNotNull() {
            addCriterion("pile_integrity is not null");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityEqualTo(String value) {
            addCriterion("pile_integrity =", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityNotEqualTo(String value) {
            addCriterion("pile_integrity <>", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityGreaterThan(String value) {
            addCriterion("pile_integrity >", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityGreaterThanOrEqualTo(String value) {
            addCriterion("pile_integrity >=", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityLessThan(String value) {
            addCriterion("pile_integrity <", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityLessThanOrEqualTo(String value) {
            addCriterion("pile_integrity <=", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityLike(String value) {
            addCriterion("pile_integrity like", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityNotLike(String value) {
            addCriterion("pile_integrity not like", value, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityIn(List<String> values) {
            addCriterion("pile_integrity in", values, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityNotIn(List<String> values) {
            addCriterion("pile_integrity not in", values, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityBetween(String value1, String value2) {
            addCriterion("pile_integrity between", value1, value2, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andPileIntegrityNotBetween(String value1, String value2) {
            addCriterion("pile_integrity not between", value1, value2, "pileIntegrity");
            return (Criteria) this;
        }

        public Criteria andSedimentIsNull() {
            addCriterion("sediment is null");
            return (Criteria) this;
        }

        public Criteria andSedimentIsNotNull() {
            addCriterion("sediment is not null");
            return (Criteria) this;
        }

        public Criteria andSedimentEqualTo(String value) {
            addCriterion("sediment =", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentNotEqualTo(String value) {
            addCriterion("sediment <>", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentGreaterThan(String value) {
            addCriterion("sediment >", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentGreaterThanOrEqualTo(String value) {
            addCriterion("sediment >=", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentLessThan(String value) {
            addCriterion("sediment <", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentLessThanOrEqualTo(String value) {
            addCriterion("sediment <=", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentLike(String value) {
            addCriterion("sediment like", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentNotLike(String value) {
            addCriterion("sediment not like", value, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentIn(List<String> values) {
            addCriterion("sediment in", values, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentNotIn(List<String> values) {
            addCriterion("sediment not in", values, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentBetween(String value1, String value2) {
            addCriterion("sediment between", value1, value2, "sediment");
            return (Criteria) this;
        }

        public Criteria andSedimentNotBetween(String value1, String value2) {
            addCriterion("sediment not between", value1, value2, "sediment");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNull() {
            addCriterion("create_user is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNotNull() {
            addCriterion("create_user is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualTo(String value) {
            addCriterion("create_user =", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualTo(String value) {
            addCriterion("create_user <>", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThan(String value) {
            addCriterion("create_user >", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("create_user >=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThan(String value) {
            addCriterion("create_user <", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualTo(String value) {
            addCriterion("create_user <=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLike(String value) {
            addCriterion("create_user like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotLike(String value) {
            addCriterion("create_user not like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIn(List<String> values) {
            addCriterion("create_user in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotIn(List<String> values) {
            addCriterion("create_user not in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserBetween(String value1, String value2) {
            addCriterion("create_user between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotBetween(String value1, String value2) {
            addCriterion("create_user not between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeIsNull() {
            addCriterion("udpate_time is null");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeIsNotNull() {
            addCriterion("udpate_time is not null");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeEqualTo(Date value) {
            addCriterion("udpate_time =", value, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeNotEqualTo(Date value) {
            addCriterion("udpate_time <>", value, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeGreaterThan(Date value) {
            addCriterion("udpate_time >", value, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("udpate_time >=", value, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeLessThan(Date value) {
            addCriterion("udpate_time <", value, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeLessThanOrEqualTo(Date value) {
            addCriterion("udpate_time <=", value, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeIn(List<Date> values) {
            addCriterion("udpate_time in", values, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeNotIn(List<Date> values) {
            addCriterion("udpate_time not in", values, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeBetween(Date value1, Date value2) {
            addCriterion("udpate_time between", value1, value2, "udpateTime");
            return (Criteria) this;
        }

        public Criteria andUdpateTimeNotBetween(Date value1, Date value2) {
            addCriterion("udpate_time not between", value1, value2, "udpateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}